Koptekst, Voettekst, pagina break en afbeeldingen

Hier is een voorbeeld van een document met 2 pagina's, met koptekst, voettekst en logo:

<?php
require('fpdf.php');

class
PDF extends FPDF
{
//Page header
function Header()
{
    
//Logo
    
$this->Image('logo_pb.png',10,8,33);
    
//Arial vet 15
    
$this->SetFont('Arial','B',15);
    
//Beweeg naar rechts
    
$this->Cell(80);
    
//Titel
    
$this->Cell(30,10,'Title',1,0,'C');
    
//Line break
    
$this->Ln(20);
}

//Page footer
function Footer()
{
    
//Positie 1.5 cm van de onderkant
    
$this->SetY(-15);
    
//Arial cursief 8
    
$this->SetFont('Arial','I',8);
    
//Pagina nummer
    
$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
}
}

//Instanciation of inherited class
$pdf=new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',12);
for(
$i=1;$i<=40;$i++)
    
$pdf->Cell(0,10,'Regelnummer '.$i,0,1);
$pdf->Output();
?>

Dit voorbeeld maakt gebruik van de Header() en Footer() methodes om de pagina koptekst en voettekst te genereren. Deze worden automatisch aangeroepen. Ze bestaan in de FPDF class maar doen niets, daarom moeten we de class uitbreiden en deze commando's vervangen.

Het logo wordt weergegeven met de Image() methode door de linker boven hoek op te geven en de breedte van de afbeelding. De hoogte wordt automatisch berekend om rekening te houden met de verhouding van de afbeelding.

Om het pagina nummer weer te geven, is een waarde 0 ingegeven voor de breedte van de cel. Dit betekent dat de cell zich tot de rechtermarge van de pagina uitbreidt; het is hierdoor handig om tekst te centreren. De huidige pagina wordt opgegeven door de PageNo() methode; Voor het totale aantal paginas wordt de speciale waarde {nb} gebruikt welke wordt ingevuld als het document afgesloten wordt (op voorwaarde dat AliasNbPages() eerst wordt aangeroepen).
Let op het gebruik van de SetY() methode waarmee de positie kan worden ingesteld op een absolutie plaats, beginnend bij de bovenkant of onderkant van de pagina.

Een andere interessante functie wordt hier gebruikt: De automatische page breaking. Zodra een cell over de limiet van de pagina zou gaan (standaard op 2 cm vanaf de onderkant), wordt een break uitgevoerd en het lettertype hersteld. Alhoewel de koptekst en voettekst hun eigen lettertype (Arial) selecteren, gaat de body verder met Times. Dit mechanisme van automatisch herstellen geldt ook voor kleuren en lijn diktes. De limiet welke de pagina break activeert kan worden ingesteld met SetAutoPageBreak().